package org.tity.sql.sql.dialect;

import static org.junit.Assert.assertTrue;

import java.util.Date;

import org.tity.sql.GlobalSettings;
import org.tity.sql.dao.DAO;
import org.tity.sql.dao.config.Configs;
import org.tity.sql.dialect.SQLDialect;
import org.tity.sql.sql.builder.SE;

public class PLSQLDialectTester {

	public void doTest()
	{
 
		String from=" from dual";
		
		GlobalSettings.DEFAULT_SQL_DIALECT=SQLDialect.PLSQL;
		DAO dao=Configs.getDAO(GlobalSettings.DEFAULT_SQL_DIALECT);
		
		// to_date 测试
		String sql=null;
		SE se=new SE("select ? "+from,new Date());
		sql=se.getSQL();
		assertTrue(sql.indexOf("to_date")>0);
		assertTrue(sql.indexOf("yyyy-mm-dd hh24:mi:ss")>0);
		Date date=dao.queryDate(sql);
		assertTrue(date!=null);
		//分号测试
		se=new SE("select ? "+from,"A'a,z''A");
		sql=se.getSQL();
		assertTrue(sql.indexOf("A''a,z''''A")>0);
		String str=dao.queryString(sql);
		assertTrue("A'a,z''A".equals(str));
 
		
		
		
	}
	
}
